The invention generally relates to computers and computer software, and in particular to methods, apparatuses, and computer program products for selecting search results for responding to a search query.
Reservation systems for travel related services, such as flights, typically include one or more databases that store data relating to the travel services being offered. These databases may include a fare database containing data used in determining a price of a service, and an availability database containing data used to determine if the service is available. Reservation systems may also provide tools that allow end-users, such as travelers and travel agents, to search for and book travel services that satisfy desired trip criteria. To this end, the tools provided may include one or more machine interfaces that enable other systems to access data from the databases. Systems provided access through these machine interfaces may include a Global Distribution System (GDS), as well as systems operated by travel agencies or other sellers of travel services.
To book a travel service, a traveler may access a travel-related website provided by the seller. As part of the booking process, the traveler may provide search criteria, such as an origin, destination, travel dates, booking class, etc., and launch a search query using the website. In response to receiving the search query, a search engine provided by one of the aforementioned systems may retrieve data from the databases and generate search results comprising travel itineraries that satisfy the search criteria. The speed and quality of the search results provided by the search engine can be a deciding factor that distinguishes one online seller, such as an online travel agent or agency, from another. Thus, travelers searching online for travel services, such as priced flights, hotels, or car rentals, may prefer one online seller over another based largely on both the quality of search results and the speed with which those results are provided.
Obtaining new search results each time a search query is received tends to be computationally intensive, and may increase the amount of time it takes to provide the search results to the traveler. Delays can be frustrating to the traveler, especially when the traveler is still in the process of shopping for travel services. To improve the speed with which search results can be determined, the search engine may use cached search results. Relying on cached search results may reduce the computational load on the reservation system, and improve perceived responsiveness of the search engine. However, conventional systems for using cached search results typically trade off speed verses quality based on how often the cache is updated from the fare and availability databases. Quality of cached search results may be particularly venerable to becoming stale in the travel industry due to rapid changes in availability, prices, and schedules. If either the quality or speed of search results is perceived as inadequate by the traveler, the traveler may seek out another online seller to search for and obtain travel services. How well a travel-related web site provides search results may thereby contribute to the amount of traffic and the number of purchases per view, or the “conversion rate” for the website.
Thus, improved methods, apparatuses, and computer program products for selecting cached search results are needed that improve both the speed and quality of search results provided in response to receiving a search query.